package br.com.financeiro.dao;

import java.util.List;

import org.hibernate.Query;
import org.hibernate.Session;

import br.com.financeiro.domain.Usuario;

public class UsuarioDaoImpl implements UsuarioDao{

	private Session session;
	
	public void setSession(Session session){
		this.session=session;
	}
	
	public void salvar(Usuario usuario) {
		this.session.save(usuario);
		
	}

	public void update(Usuario usuario) {
		this.session.update(usuario);
		
	}

	public void excluir(Usuario usuario) {
		this.session.delete(usuario);
		
	}

	public Usuario carregar(Usuario usuario) {
		return (Usuario)this.session.createCriteria(Usuario.class).list();
	}

	public String buscarPorLogin(String login) {

		String hql="select u.login from Usuario u where u.login=:login";
		Query consulta=this.session.createQuery(hql);
		consulta.setString("login", login);	
		return (String) consulta.uniqueResult();
	}

	public List<Usuario> listar() {
		return this.session.createCriteria(Usuario.class).list();
	}

}
